package com.yonyou.cyxdms.basedata.service.dto;

import com.yonyou.cyx.framework.bean.dto.base.BaseDTO;
import com.yonyou.cyx.framework.bean.entity.base.BasePO;
import com.yonyou.cyx.function.utils.bean.BeanMapperUtil;

import java.io.Serializable;

/**
 * <p>
 * 车系表
 * </p>
 *
 * @author guorp1
 * @since 2018-11-12
 */

public class CarserialDTO extends BaseDTO implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * carserial_id
     */
    private Long carserialId;
    /**
     * 来源ID
     */
    private Long sourceId;
    /**
     * APP_ID
     */
    private String appId;
    /**
     * 名称
     */
    private String name;
    /**
     * 展示名称
     */
    private String showName;
    /**
     * 化名
     */
    private String aliasName;
    /**
     * 首字母
     */
    private String initial;
    /**
     * SHARE_URL
     */
    private String shareUrl;
    /**
     * 重要等级
     */
    private String importantLevel;
    /**
     * 替换
     */
    private String repairPolicy;
    /**
     * 别名
     */
    private String ename;
    /**
     * 等级id
     */
    private Integer levelId;
    /**
     * 等级名称
     */
    private String levelName;
    /**
     * 第二等级
     */
    private String secondLevel;
    /**
     * 体形
     */
    private String bodyForm;
    /**
     * 手机
     */
    private String phone;
    /**
     * Web_Site
     */
    private String webSite;
    /**
     * 原型
     */
    private String virtues;
    /**
     * 缺点
     */
    private String defect;
    /**
     * 说明
     */
    private String introduction;
    /**
     * 父id
     */
    private Integer masterId;
    /**
     * 品牌ID
     */
    private Long brandId;
    /**
     * 车年
     */
    private String carYear;
    /**
     * 搜索名称
     */
    private String seoName;
    /**
     * 访问量
     */
    private Integer pV;
    /**
     * 访问数
     */
    private Integer uV;
    /**
     * 类别
     */
    private Integer sort;
    /**
     * 作用
     */
    private String purpose;
    /**
     * 销售状态
     */
    private Integer saleState;
    /**
     * logo
     */
    private String logo;
    /**
     * HasBottom_Pic
     */
    private Integer hasbottomPic;
    /**
     * 最低价格
     */
    private Double minPrice;
    /**
     * 最高价格
     */
    private Double maxPrice;
    /**
     * 经销商最低价格
     */
    private Double dealerminPrice;
    /**
     * 经销商最高价格
     */
    private Double dealermaxPrice;
    /**
     * 编辑状态
     */
    private Integer editState;
    /**
     * 是否展示新闻
     */
    private Integer isshowNews;
    /**
     * 数据来源
     */
    private Integer sourceChannel;
    /**
     * 车系Code
     */
    private String seriesCode;
    /**
     * 是否有效
     */
    private Integer isValid;
    /**
     * 是否进口
     */
    private Integer isImport;

    public CarserialDTO() {
        super();
    }


    public Long getCarserialId() {
        return carserialId;
    }


    public void setCarserialId(Long carserialId) {
        this.carserialId = carserialId;
    }


    public Long getSourceId() {
        return sourceId;
    }


    public void setSourceId(Long sourceId) {
        this.sourceId = sourceId;
    }


    public String getAppId() {
        return appId;
    }


    public void setAppId(String appId) {
        this.appId = appId;
    }


    public String getName() {
        return name;
    }


    public void setName(String name) {
        this.name = name;
    }


    public String getShowName() {
        return showName;
    }


    public void setShowName(String showName) {
        this.showName = showName;
    }


    public String getAliasName() {
        return aliasName;
    }


    public void setAliasName(String aliasName) {
        this.aliasName = aliasName;
    }


    public String getInitial() {
        return initial;
    }


    public void setInitial(String initial) {
        this.initial = initial;
    }


    public String getShareUrl() {
        return shareUrl;
    }


    public void setShareUrl(String shareUrl) {
        this.shareUrl = shareUrl;
    }


    public String getImportantLevel() {
        return importantLevel;
    }


    public void setImportantLevel(String importantLevel) {
        this.importantLevel = importantLevel;
    }


    public String getRepairPolicy() {
        return repairPolicy;
    }


    public void setRepairPolicy(String repairPolicy) {
        this.repairPolicy = repairPolicy;
    }


    public String getEname() {
        return ename;
    }


    public void setEname(String ename) {
        this.ename = ename;
    }


    public Integer getLevelId() {
        return levelId;
    }


    public void setLevelId(Integer levelId) {
        this.levelId = levelId;
    }


    public String getLevelName() {
        return levelName;
    }


    public void setLevelName(String levelName) {
        this.levelName = levelName;
    }


    public String getSecondLevel() {
        return secondLevel;
    }


    public void setSecondLevel(String secondLevel) {
        this.secondLevel = secondLevel;
    }


    public String getBodyForm() {
        return bodyForm;
    }


    public void setBodyForm(String bodyForm) {
        this.bodyForm = bodyForm;
    }


    public String getPhone() {
        return phone;
    }


    public void setPhone(String phone) {
        this.phone = phone;
    }


    public String getWebSite() {
        return webSite;
    }


    public void setWebSite(String webSite) {
        this.webSite = webSite;
    }


    public String getVirtues() {
        return virtues;
    }


    public void setVirtues(String virtues) {
        this.virtues = virtues;
    }


    public String getDefect() {
        return defect;
    }


    public void setDefect(String defect) {
        this.defect = defect;
    }


    public String getIntroduction() {
        return introduction;
    }


    public void setIntroduction(String introduction) {
        this.introduction = introduction;
    }


    public Integer getMasterId() {
        return masterId;
    }


    public void setMasterId(Integer masterId) {
        this.masterId = masterId;
    }


    public Long getBrandId() {
        return brandId;
    }


    public void setBrandId(Long brandId) {
        this.brandId = brandId;
    }


    public String getCarYear() {
        return carYear;
    }


    public void setCarYear(String carYear) {
        this.carYear = carYear;
    }


    public String getSeoName() {
        return seoName;
    }


    public void setSeoName(String seoName) {
        this.seoName = seoName;
    }


    public Integer getpV() {
        return pV;
    }


    public void setpV(Integer pV) {
        this.pV = pV;
    }


    public Integer getuV() {
        return uV;
    }


    public void setuV(Integer uV) {
        this.uV = uV;
    }


    public Integer getSort() {
        return sort;
    }


    public void setSort(Integer sort) {
        this.sort = sort;
    }


    public String getPurpose() {
        return purpose;
    }


    public void setPurpose(String purpose) {
        this.purpose = purpose;
    }


    public Integer getSaleState() {
        return saleState;
    }


    public void setSaleState(Integer saleState) {
        this.saleState = saleState;
    }


    public String getLogo() {
        return logo;
    }


    public void setLogo(String logo) {
        this.logo = logo;
    }


    public Integer getHasbottomPic() {
        return hasbottomPic;
    }


    public void setHasbottomPic(Integer hasbottomPic) {
        this.hasbottomPic = hasbottomPic;
    }


    public Double getMinPrice() {
        return minPrice;
    }


    public void setMinPrice(Double minPrice) {
        this.minPrice = minPrice;
    }


    public Double getMaxPrice() {
        return maxPrice;
    }


    public void setMaxPrice(Double maxPrice) {
        this.maxPrice = maxPrice;
    }


    public Double getDealerminPrice() {
        return dealerminPrice;
    }


    public void setDealerminPrice(Double dealerminPrice) {
        this.dealerminPrice = dealerminPrice;
    }


    public Double getDealermaxPrice() {
        return dealermaxPrice;
    }


    public void setDealermaxPrice(Double dealermaxPrice) {
        this.dealermaxPrice = dealermaxPrice;
    }


    public Integer getEditState() {
        return editState;
    }


    public void setEditState(Integer editState) {
        this.editState = editState;
    }


    public Integer getIsshowNews() {
        return isshowNews;
    }


    public void setIsshowNews(Integer isshowNews) {
        this.isshowNews = isshowNews;
    }


    public Integer getSourceChannel() {
        return sourceChannel;
    }


    public void setSourceChannel(Integer sourceChannel) {
        this.sourceChannel = sourceChannel;
    }


    public String getSeriesCode() {
        return seriesCode;
    }


    public void setSeriesCode(String seriesCode) {
        this.seriesCode = seriesCode;
    }


    public Integer getIsValid() {
        return isValid;
    }


    public void setIsValid(Integer isValid) {
        this.isValid = isValid;
    }


    public Integer getIsImport() {
        return isImport;
    }


    public void setIsImport(Integer isImport) {
        this.isImport = isImport;
    }


    @Override
    public String toString() {
        return "CarserialDTO{" +
                "carserialId=" + carserialId +
                ", sourceId=" + sourceId +
                ", appId=" + appId +
                ", name=" + name +
                ", showName=" + showName +
                ", aliasName=" + aliasName +
                ", initial=" + initial +
                ", shareUrl=" + shareUrl +
                ", importantLevel=" + importantLevel +
                ", repairPolicy=" + repairPolicy +
                ", ename=" + ename +
                ", levelId=" + levelId +
                ", levelName=" + levelName +
                ", secondLevel=" + secondLevel +
                ", bodyForm=" + bodyForm +
                ", phone=" + phone +
                ", webSite=" + webSite +
                ", virtues=" + virtues +
                ", defect=" + defect +
                ", introduction=" + introduction +
                ", masterId=" + masterId +
                ", brandId=" + brandId +
                ", carYear=" + carYear +
                ", seoName=" + seoName +
                ", pV=" + pV +
                ", uV=" + uV +
                ", sort=" + sort +
                ", purpose=" + purpose +
                ", saleState=" + saleState +
                ", logo=" + logo +
                ", hasbottomPic=" + hasbottomPic +
                ", minPrice=" + minPrice +
                ", maxPrice=" + maxPrice +
                ", dealerminPrice=" + dealerminPrice +
                ", dealermaxPrice=" + dealermaxPrice +
                ", editState=" + editState +
                ", isshowNews=" + isshowNews +
                ", sourceChannel=" + sourceChannel +
                ", seriesCode=" + seriesCode +
                ", isValid=" + isValid +
                ", isImport=" + isImport +
                "}";
    }

    /**
     * 将DTO 转换为PO
     * //对某个对象属性进行赋值
     * //BeanMapperUtil.populateValueByMethod(transPO,"setXxx",this.getXxx);
     *
     * @param poClass dto 需要转换的dto
     * @author guorp1
     * @since 2018/7/22 0022
     */
    @Override
    public <T extends BasePO> T transDtoToPo(Class<T> poClass) {
        return super.transDtoToPo(poClass);
    }

    /**
     * 将DTO 转换为PO
     * BeanMapperUtil.populateValueByMethod(transPO,"setXxx",this.getXxx);
     *
     * @param po 需要转换的对象
     * @author guorp1
     * @since 2018/7/22 0022
     */
    public <T extends BasePO> void transDtoToPo(T po) {
        BeanMapperUtil.copyProperties(this, po, "carserialId");
    }

}
